package com.gavin.ioc;

import com.gavin.ioc.component.StudentComponent;
import com.gavin.ioc.controller.HelloController;
import com.gavin.ioc.model.Student;
import com.gavin.ioc.service.UserService;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.ComponentScan;


@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        ApplicationContext context=SpringApplication.run(DemoApplication.class, args);


//        HelloController controller=new HelloController();
//        controller.print();
//

//
//        HelloController bean3=context.getBean("helloController",HelloController.class);
//        bean3.print();
//        System.out.println(bean);
//        System.out.println(bean2);
//        System.out.println(bean3);
//        HelloController bean1 = context.getBean(HelloController.class);
//        bean1.print();
//
//        HelloController bean1=(HelloController) context.getBean("helloController");
//        bean1.print();
//        HController bean5=(HController)context.getBean("aaa");
//        bean5.print();
//
//        UserService bean=context.getBean(UserService.class);
//        bean.print();
//        UserRepository bean2=context.getBean(UserRepository.class);
//        bean2.print();
//        UserComponent bean3=context.getBean(UserComponent.class);
//        bean3.print();
//        UserConfig bean4=context.getBean(UserConfig.class);
//        bean4.print();
        //@Bean
//        Student bean=(Student) context.getBean("s3");
//        System.out.println(bean);
//        Student bean2=(Student) context.getBean("s2");
//        System.out.println(bean2);
//        Student bean3=(Student) context.getBean("s5");
//        System.out.println(bean3);
        
        //DI测试
//        HelloController bean = context.getBean(HelloController.class);
//        bean.print();

//        UserService bean = context.getBean(UserService.class);
//        bean.print();

    }
}
